High-Performance Java Persistence by Vlad Mihalcea
Author:Vlad Mihalcea [Mihalcea, Vlad]
Language: eng
Format: epub, pdf
Published: 2016-02-05T15:03:42+00:00
Transactions
113
7.7 Application-level transactions
So far, the book focused on database transactions to enforce ACID properties. But from the application perspective, a business workflow might span over multiple physical database transactions, in
which case the database ACID guarantees will not be sufficient anymore.
A logical transaction may be composed of multiple web requests, including user think time, for
which reason it can be visualized as a long conversation.
In the following example, both Alice and a background batch process are concurrently modifying the same database record.
Figure 7.14: Stateless conversation loosing updates
Because Alice logical transaction encloses two separate web requests, each one associated with a separate database transaction, without an additional concurrency control mechanism, even the
strongest isolation level cannot prevent the lost update phenomena.
Spanning a database transaction over multiple web requests is prohibitive since locks would be
held during user think time, therefore hurting scalability. Even with MVCC, the cost of maintaining previous versions (that can lead to a large version graph) can escalate and affect both performance and concurrency.
In a highly concurrent environment, database transactions are bound to be as short
as possible. Application-level transactions require application-level concurrency control
mechanisms.
Download
High-Performance Java Persistence by Vlad Mihalcea.pdf
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.
The Mikado Method by Ola Ellnestam Daniel Brolund(25294)
Hello! Python by Anthony Briggs(24339)
Secrets of the JavaScript Ninja by John Resig Bear Bibeault(23434)
Kotlin in Action by Dmitry Jemerov(22512)
The Well-Grounded Java Developer by Benjamin J. Evans Martijn Verburg(21976)
Dependency Injection in .NET by Mark Seemann(21848)
OCA Java SE 8 Programmer I Certification Guide by Mala Gupta(20715)
Algorithms of the Intelligent Web by Haralambos Marmanis;Dmitry Babenko(19523)
Grails in Action by Glen Smith Peter Ledbrook(18609)
Adobe Camera Raw For Digital Photographers Only by Rob Sheppard(17034)
Sass and Compass in Action by Wynn Netherland Nathan Weizenbaum Chris Eppstein Brandon Mathis(15843)
Secrets of the JavaScript Ninja by John Resig & Bear Bibeault(13691)
Test-Driven iOS Development with Swift 4 by Dominik Hauser(11857)
Jquery UI in Action : Master the concepts Of Jquery UI: A Step By Step Approach by ANMOL GOYAL(11151)
A Developer's Guide to Building Resilient Cloud Applications with Azure by Hamida Rebai Trabelsi(10624)
Hit Refresh by Satya Nadella(9202)
The Kubernetes Operator Framework Book by Michael Dame(8570)
Exploring Deepfakes by Bryan Lyon and Matt Tora(8408)
Robo-Advisor with Python by Aki Ranin(8361)